/*
 * Copyright (c) 2022  by Junzhao
 * THIS FILE IS PART OF JAVASE Song Huongkang PROJECT
 * All Rights Reserved.
 */

package 日期与时间.JDK8之前;

import org.junit.Test;

import java.util.Calendar;
import java.util.GregorianCalendar;

/**
 * @description Calendar(日历)类
 * java.util.Calendar(日历)类
 *  Calendar是一个抽象基类，主用用于完成 日期字段 之间 相互操作 的功能。
 *  获取Calendar实例的方法
 *  使用Calendar.getInstance()方法
 *  调用它的子类GregorianCalendar的构造器。
 *  一个Calendar的实例是系统时间的抽象表示，通过get(int field)方法来取得想
 * 要的时间信息。比如YEAR、MONTH、DAY_OF_WEEK、HOUR_OF_DAY 、
 * MINUTE、SECOND
 *  public void set(int field,int value)
 *  public void add(int field,int amount)
 *  public final Date getTime()
 *  public final void setTime(Date date)
 *  注意:
 *  获取月份时：一月是0，二月是1，以此类推，12月是11
 *  获取星期时：周日是1，周二是2 ， 。。。。周六是7
 * @author 俊昭
 * @date 2022/4/17
*/
public class CalendarTest {
    @Test
    public void test01(){
        Calendar cd1 = Calendar.getInstance();
        Calendar cd2 = new GregorianCalendar();

        System.out.println(cd1.get(Calendar.YEAR));// 2022
//        System.out.println(cd1.get(Calendar.MONTH));// 3 四月
//        System.out.println(cd1.get(Calendar.HOUR));// 0
//        System.out.println(cd1.get(Calendar.DAY_OF_WEEK));// 1 周日
//        System.out.println(cd1.get(Calendar.HOUR_OF_DAY));// 12


        System.out.println(cd1.getTime());// Sun Apr 17 12:06:55 CST 2022

        cd1.set(Calendar.YEAR,2000);
        System.out.println(cd1.get(Calendar.YEAR));// 2000

        cd1.add(Calendar.YEAR,2);
        System.out.println(cd1.get(Calendar.YEAR));// 2002
    }
}
